<?php
/**
 * Classe responsável pelo feedback do sistema para o usuário
 * 
 * @author Cristiano M. Gomes <cmgomes.es@gmail.com>
 */
class Mensagens {
	/**
	 * Array contendo as mensagens no formato titulo => mensagem
	 *
	 * @var array
	 */
	private static $mensagem = array();
	
	/**
	 * Instancia singleton do objeto
	 *
	 * @var Mensagens
	 */
	private static $instancia;
	
	/**
	 * Função singleton do objeto
	 *
	 * @return Mensagem
	 */
	public static function Instanciar(){
		if(self::$instancia){
			return self::$instancia;
		}else{
			self::$instancia = new Mensagens();
			return self::$instancia;
		}
	}

	/**
	 * Função para envio de mensagem
	 * Com base na mensagem registrada aqui, o framework gera um alert personalizado 
	 * em tela para o usuário.
	 *
	 * @param String $titulo
	 * @param String $conteudo
	 */
	public static function NovaMensagem($titulo, $conteudo){
		self::$mensagem['titulo'] = $titulo;
		self::$mensagem['conteudo'] = $conteudo;
	}

	/**
	 * Get das mensagens registrada até o momento
	 *
	 * @return array
	 */
	public static function GetMensagem(){
		return self::$mensagem;
	}

	/**
	 * Envia uma resposta padronizada em xml.
	 * Mais usado quando sistema é chamado via ajax e prescisa de um retorno
	 * para saber se ouve sucesso ou não na execução da tarefa.
	 * 
	 * @param array $array
	 */
	public static function GerXmlResposta(array $array){
		header("Content-type: text/xml charset:utf-8");
		$xml = '<?xml version="1.0" encoding="utf-8"?>';
		$xml .= "<message>
					<code>$array[0]</code>
					<message>$array[1]</message>
					<data>$array[2]</data>
				</message>";

		echo $xml;
		die();
    }
}